An arithmetic processing device such as a processor perform out-of-order processing in which a reservation station holds instructions decoded by a decode unit and in which an order of instructions to be executed in an arithmetic execution unit is changed in accordance with a dependency relationship of data. Instructions are executed in an executable order, thereby causing the execution efficiency of the instructions to be improved compared with a case where the instructions are executed in a decoded order. By the way, there is proposed an arithmetic processing device including a first reservation station to load instructions into a multiplier able to execute addition and subtraction in addition to multiplication and subtraction and a second reservation station to load instructions into an adder only able to execute addition and subtraction. The arithmetic processing device includes a first register and a second register that correspond to each of the first and second reservation stations and that hold decoded instructions before loading these into the reservation stations.
Multiplication instructions or division instructions output by one of the first and second registers are deployed in a preceding flow to store in a dedicated register and a subsequent flow to load, into the first reservation station, multiplication instructions or division instructions stored in the dedicated register. For this reason, in a case where addition instructions or subtraction instructions are only held by the first and second registers, a time taken to load instructions into the reservation stations in a decode cycle is shortened compared with a case where instructions are not deployed in flows.
In addition, a control reservation station storing therein control information of microprograms corresponding to decoded instructions is installed for each of flows. Accordingly, instructions to be executed by out-of-order processing become able to be controlled by microprograms.
As examples of the related art, there are Japanese Laid-open Patent Publication No. 2004-38751 and Japanese Laid-open Patent Publication No. 2000-181702.